package week04.homework01MazeGame.model.spell;

import week04.homework01MazeGame.model.role.Monster;
import week04.homework01MazeGame.model.role.Player;

/**
 * @author li
 */
public interface Spell {

    /**
     * 施放魔法
     * @param player 施放魔法的玩家
     * @param monster 被施放魔法的怪物
     */
    void cast(Player player, Monster monster);

    /**
     * 获取魔法消耗
     * @return 魔法消耗
     */
    int getManaCost();

    /**
     * 获取魔法名称
     * @return 魔法名称
     */
    String getSpellName();

    /**
     * 获取魔法描述
     * @return 魔法描述
     */
    String getDescription();

}
